[忘年会議, はくらい提督, Haxe->Unity エディタの準備中]


概要

忘年会議スタッフの皆様、素晴らしい忘年会議をありがとうございました!

来年も来たい。



タイトル前半に意味はありません。あった事を配列に入れただけです。



HaxeがUnity用のコンパイルに対応したとの事で、動かしてみる。

最終目的としては、SublimeSocketAssetの Haxe -> Unity対応版を出す。


日本語の情報源はここ

Haxe Advent Calendar 2013の14日目の記事

Unity4.3新機能とか Haxeで何かつくったはなし。(前編 : Haxeビルドまで。)

http://qiita.com/nobkz/items/ce6bbf56d0f0cbad2e13


とっても参考になる記事だった。

@hakurai 提督に教えていただいた。

ちなみにこの記事で使っているHaxe->Unity変換のさらに元ネタは下記。

https://github.com/AxGord/hx-unity3d



Haxe、入っていますか

もしインストールしていなければ、

homebrewにも対応している。ので簡単に入る。


brew install haxe


/usr/local/include のパーミッションによっては、link作成に失敗するので、

フォルダの権限とか弄ってやると良い。



haxelibについて

インストールして最初の一回は、setupを行わなければいけない。


haxelib setup

その後はアドベントカレンダーにそのまま従う感じ。


一応実用可能か確かめたときのブツ

下記に上げておいた。

https://github.com/sassembla/Haxe-Unity



アドベントとの差分としては、

Haxe側でコンパイルする必要ない(っていうかエラーが出まくるだけ)ので、build.hxml -D no-compilation を付記した。

build.hxmlを調整して、csファイルの吐き出し先をAssets以下にするようにした。


build.hxml

-D no-compilation

-lib unity3d

-cp src/

-cs ../Assets/cs

MyClass


Assets直下に出来るフォルダの名前も、なんか考えた方が良いかもしれない。


自分のやりたい事=Haxe->C#->Unityで実行した際のエラーをHaxe上に吐く

いろいろパーツ探し中。

HaxeからC#を吐いて、Unityでコンパイルしたり動かしたりしたときのエラーログとかを、

Haxeのコード上にマッピングしたい。


こういうのが必要。

コード:

Haxe -> C#( + compilationTargetMap) -> Unity Compilation


エラー:

Haxe <- C#( + compilationTargetMap) <- Unity Compilation

<- コンパイルエラー発生

<- C#上のエラー情報

<- Haxe->C#への変換マップ

<-Haxe上へのエラー表示


ということで、上記の中の矢印、

<- Haxe->C#への変換マップ

が必要。



Haxe -> JavaScript とかだと、ソースマップを吐く機構が備わってるのでいいんだけど。

http://haxe.org/doc/js/source_debugging


他の言語だとどうなってるんだろう。Haxeがその辺標準で持ってると嬉しい。


@hakurai 提督に、(忘年会議後に香川まで拉致って)お話を伺ったところ、

Haxe -> Java 機構で、Java化後のコンパイルは必要な筈なので、

Javaのコンパイルエラーが出る -> Haxeコードのこのへんだよ、って機構は存在する筈。

というステキなお話をいただいた。

やってみんべー。